home *** CD-ROM | disk | FTP | other *** search
- % Provide access to the boldface san serif type style for LaTeX. Once you
- % have included "bsf" as a style option, you can use the \bsf command to
- % select the boldface san serif style, just as you would select the usual
- % boldface Roman style with \bf, EXCEPT:
- %
- % The various fonts defined here are all "loaded on demand". As
- % discussed in the LaTeX book, Section C.14.4, a loaded on demand
- % font is subject to two restrictions when used in math mode:
- %
- % - The font must be used OUTSIDE of math mode before it is used
- % INSIDE of math mode. The \load command can be used to get
- % around this restriction.
- %
- % - Only a single font size is available within math mode - the
- % display, text, script and scriptscriptfonts will all be the
- % same. This can be avoided ONLY by changing the definitions
- % given here to pre-load the appropriate fonts; see LFONTS.TEX
- % for further information. (Alternatively, \@getfont could be
- % made more clever.) Note that pre-loading the fonts could cause
- % you to fill font space with fonts you never really use.
- %
- % In order to allow other style files that need access to \bsf to input this
- % file safely, it is designed so that an attempt to input it a second time -
- % or, more exactly, when command "\bsf" is already defined - is ignored.
- %
- % This file can be adapted easily to define other font type styles. The real
- % limit is likely to come from the requirement that each style so defined must
- % be given a unique family number - TeX only supports 16 families and LaTeX
- % as usually configured already uses 10. The right way to avoid this problem
- % is to modify \@getfont so that it ignores a family number of -1. Fonts
- % so specified would not be usable in math mode, but that's no big deal; you
- % don't WANT to use tons of non-math fonts in math mode anyway.
- %
- % As currently written, this file assumes that you have boldface san serif
- % fonts available at the following point sizes:
- %
- % lcmssb8
- % lcmssb8 at 9pt
- % cmssbx10
- % cmssbx10 at 11pt
- % cmssbx10 at 12pt
- % cmssbx10 at 17pt
- % cmssbx10 at 25pt
- %
- % All but the last of these should be commonly available. I'm not sure about
- % the last one; LFONTS.TEX does not assume the availability of ANY 25 pt fonts
- % other than Roman. If necessary, change the definition of \bsfxxv@ to
- % \@subfont\bsf\rm. (Alternatively, if you have boldface sans serif fonts
- % at sizes smaller than 8pt, you might want to change the definitions of
- % \bsfv@, \bsfvi@, and \bsfvii@.)
- %
- % Technical note: It is possible to do without the \bsf<size>@ macros by
- % including their contents, with a whole bunch of \@prtct's, within the
- % \@addfontinfo definitions. This is a pain to do, and probably doesn't end
- % up saving any space anyway. This way costs you a bunch of extra macros,
- % but it's a LOT easier to understand!
- %
- % Written by Jerry Leichter (LEICHTER-JERRY@CS.YALE.EDU)
-
- \expandafter\ifx\csname bsf\endcsname\relax %Once only, please
- % Note: It's a pain to use \@ifundefined here - we don't want to pass the
- % rest of the definitions as an argument, but we can't easily use \endinput
- % since, with docsty, we can't control where the line breaks occur.
-
- \typeout{Document Option `bsf': 29 Feb 88}
- \def\bsf{\protect\pbsf}
- \newfam\sbffam
- \@addfontinfo\@vpt{\@prtct\bsfv@}
- \def\bsfv@{\def\pbsf{\@subfont\bsf\bf}}
- \@addfontinfo\@vipt{\@prtct\bsfvi@}
- \def\bsfvi@{\def\pbsf{\@subfont\bsf\bf}}
- \@addfontinfo\@viipt{\@prtct\bsfvii@}
- \def\bsfvii@{\def\pbsf{\@subfont\bsf\bf}}
- \@addfontinfo\@viiipt{\@prtct\bsfviii@}
- \def\bsfviii@{\def\pbsf{\@getfont\pbsf\sbffam\@viiipt{lsmssb8}}}
- \@addfontinfo\@ixpt{\@prtct\bsfx@}
- \def\bsfx@{\def\pbsf{\@getfont\pbsf\sbffam\@ixpt{lsmssb8\@halfmag}}}
- \@addfontinfo\@xpt{\@prtct\bsfx@}
- \def\bsfx@{\def\pbsf{\@getfont\pbsf\sbffam\@xpt{cmssbx10}}}
- \@addfontinfo\@xipt{\@prtct\bsfxi@}
- \def\bsfxi@{\def\pbsf{\@getfont\pbsf\sbffam\@xipt{cmssbx10\@halfmag}}}
- \@addfontinfo\@xiipt{\@prtct\bsfxii@}
- \def\bsfxii@{\def\pbsf{\@getfont\pbsf\sbffam\@xiipt{cmssbx10\@magscale1}}}
- \@addfontinfo\@xivpt{\@prtct\bsfxiv@}
- \def\bsfxiv@{\def\pbsf{\@getfont\pbsf\sbffam\@xivpt{cmssbx10\@magscale2}}}
- \@addfontinfo\@xviipt{\@prtct\bsfxvii@}
- \def\bsfxvii@{\def\pbsf{\@getfont\pbsf\sbffam\@xviipt{cmssbx10\@magscale3}}}
- \@addfontinfo\@xxpt{\@prtct\bsfxx@}
- \def\bsfxx@{\def\pbsf{\@getfont\pbsf\sbffam\@xxpt{cmssbx10\@magscale4}}}
- \@addfontinfo\@xxvpt{\@prtct\bsfxxv@}
- \def\bsfxxv@{\def\pbsf{\@getfont\pbsf\sbffam\@xxvpt{cmssbx10\@magscale5}}}
- \fi
-